Context-specific instant messaging

ABSTRACT

Context-specific instant messaging is presented. A user views a page of data that is segmented into regions. The user performs a user action (e.g., a mouse click) and, in turn, a message generator displays context-specific phrases for the user to select based upon the region that the user action was performed and a corresponding object type. When a region corresponds to a meeting time, a context-specific phrase may also be time-sensitive. When a region corresponds to meeting participants, a context-specific phrase may include recipient identifiers. The user selects one of the context-specific phrases, and the message generator invokes a message session between the user and a recipient based upon the selected context-specific phrase. The message generator includes a link to the corresponding object such that the message recipient may easily identify the context of the message.

This application is a continuation application of co-pending U.S.Non-Provisional patent application Ser. No. 11/093,664, entitled “Systemand Method for Context-Specific Instant Messaging,” filed on Mar. 30,2005.

BACKGROUND OF THE INVENTION

1. Technical Field

The present invention relates in general to a system and method forcontext-specific instant messaging. More particularly, the presentinvention relates to a system and method for invoking a message sessionbased upon the location of a user action that corresponds to aparticular object type.

2. Description of the Related Art

Communication and collaboration have quickly become key elements ofenterprise software. One feature that exists in enterprise softwarepackages is the ability for a user to conduct a “chat” session withother online users (e.g., instant messaging).

Enterprise software typically invokes a chat session in a genericcontext. Meaning, a user selects a recipient, and the enterprisesoftware invokes a chat session between the user and the recipientwithout regard for the user's purpose for communicating with therecipient. However, users do not typically enter into chat sessions withother users for leisurely conversation. Instead, a user is prompted ortriggered by the presence of an individual's name in a specific context.For example, a user may be reviewing a document that was written by anindividual and, in this example, the user may wish to receive moreinformation from the individual regarding the particular document. Achallenge found is that when a user initiates a generic chat session,the user must include the purpose and the context of the chat session.

Another challenge found is that when a recipient receives a message, therecipient typically spends time trying to identify the context of themessage. For example, if a recipient receives a message that states“What time is our meeting?” and the recipient has many meetingsscheduled, the recipient may spend time researching multiple calendarentries before identifying the meeting that corresponds to the message.

What is needed, therefore, is a system and method for users toefficiently communicate based upon the context of a user's environment.

SUMMARY

It has been discovered that the aforementioned challenges are resolvedusing a system and method that invokes a message session based upon thelocation of a user action that corresponds to a particular object type.A user views a page of data that is segmented into regions. The userperforms a user action (e.g., a mouse click) and, in turn, a messagegenerator displays context-specific phrases for the user to select basedupon the region that the user action was performed. The user selects oneof the context-specific phrases, and the message generator invokes amessage session between the user and a recipient based upon the selectedcontext-specific phrase.

A user instructs his client to display a user interface window thatcorresponds to a particular object type. For example, the user may beviewing his calendar and select a calendar entry that is a meeting. Theclient identifies the selected object type, and displays a correspondinguser interface window that is segmented into regions. Using the exampledescribed above, the page of data may include meeting information thatis segmented into regions that correspond to the meeting location, themeeting time, the meeting chair, and the meeting participants.

The user positions his pointer over a particular region and performs auser action, such as a right mouse click. A message generator identifiesthe region where the user action was performed, and retrievescontext-specific phrases from a storage area that correspond to theidentified region. For example, if the identified region corresponds toa meeting location and the region does not include the meeting location,a context-specific phrase may be “Where is the meeting?” When a regioncorresponds to a meeting time, a context-specific phrase may also betime-sensitive, such as “I'm running a few minutes late to the meeting.”When a region corresponds to meeting participants, a context-specificphrase may include recipient identifiers and, in turn, the user mayselect a particular which meeting participant to send a message.

Once the message generator collects the context-specific phrases, themessage generator displays the phrases in a phrase window. The userviews the context-specific phrases, and selects one of the phrases inthe phrase window. In turn, the message generator invokes acontext-specific message session and includes the selected phrase in thecontext-specific message session. For example, if the user selects thephrase “Where is the meeting?”, the message generator includes the“Where is the meeting?” phrase in the context-specific message sessionand addresses the message session to the meeting host. In anotherexample, if the user selects a particular meeting participant to send amessage, the context-specific message session addresses the session tothe selected meeting participant.

The message generator also includes a link to the object thatcorresponds to the user interface window, such that the messagerecipient may easily view the object (e.g., meeting entry, onlinedocument, etc.). The message generator also allows the user to addadditional text into the context-specific message session and, when theuser is finished, the message generator sends a context-specific messageto the recipient based upon the context-specific message session. Theuser and the recipient may pass messages to each other until the user orthe recipient close the context-specific message session.

The foregoing is a summary and thus contains, by necessity,simplifications, generalizations, and omissions of detail; consequently,those skilled in the art will appreciate that the summary isillustrative only and is not intended to be in any way limiting. Otheraspects, inventive features, and advantages of the present invention, asdefined solely by the claims, will become apparent in the non-limitingdetailed description set forth below.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention may be better understood, and its numerousobjects, features, and advantages made apparent to those skilled in theart by referencing the accompanying drawings.

FIG. 1 is a diagram showing a user invoking a context-specific messagesession based upon the user performing a user action within a particularwindow region;

FIG. 2A is a calendar user interface window showing a user performing auser action in a region that corresponds to a meeting location;

FIG. 2B is a calendar user interface window showing a user selecting aregion that corresponds to meeting participants in order to initiate acontext-specific message session with one or more of the meetingparticipants;

FIG. 3A is a user interface window that allows a user to view a documentand send a context-specific message to the document owner based upon aparticular area of the document;

FIG. 3B is a message session window that includes a context-specificphrase and an object link;

FIG. 4 is a high-level flowchart showing steps taken in sending amessage that includes one or more context-specific phrases to one ormore recipients;

FIG. 5 is a flowchart showing steps taken in collecting context-specificphrases that correspond to a region where a user action was performed;

FIG. 6 is a flowchart showing steps taken in generating acontext-specific message; and

FIG. 7 is a block diagram of a computing device capable of implementingthe present invention.

DETAILED DESCRIPTION

The following is intended to provide a detailed description of anexample of the invention and should not be taken to be limiting of theinvention itself. Rather, any number of variations may fall within thescope of the invention, which is defined in the claims following thedescription.

FIG. 1 is diagram showing a user invoking a context-specific messagesession based upon the user performing a user action within a particularwindow region. The user requests client 110 to display a user interfacewindow that corresponds to a particular object type. For example, theuser may be viewing his calendar and select a calendar entry that is ameeting. Client 110 identifies the selected object type and displayswindow 120, which corresponds to the selected object type. Window 120includes a page of data that is segmented into regions 122-128. Usingthe example described above, the page of data may include meetinginformation that is segmented into regions that correspond to themeeting location, the meeting time, the meeting chair, and the meetingparticipants.

The user positions pointer 130 over region 128 and performs a useraction, such as a right mouse click. As one skilled in the art canappreciated, a use may navigate around a user interface window usingother means, such as using tab buttons. Message generator 140 detectsthat the user action was performed, and retrieves context-specificphrases from data store 160 that correspond to region 128. For example,if a region corresponds to a meeting location and the region does notinclude a particular meeting location, message generator 140 mayretrieve a context-specific phrase such as “Where is the meeting?”Another example is when a region corresponds to a meeting time andcontext-specific phrases may be time-sensitive. In this example, theuser action may be performed is past the meeting time and messagegenerator 140 may retrieve a context-sensitive message such as “I'mrunning a few minutes late to the meeting.” Yet another example is whena region corresponds to meeting participants, in which case thecontext-specific phrase may include recipient identifiers and, in turn,the user may choose which meeting participant to send a message.

In one embodiment, an administrator may manage the context-specificphrases that correspond to particular objects. In this embodiment, theadministrator may disable phrases, modify existing phrases, or createnew phrases that are associated with various object types.

Once message generator 140 collects the context-specific phrases,message generator 140 displays the phrases in phrase window 160. Theuser views the context-specific phrases, and selects one of the phrasesin phrase window 160. In turn, message generator 140 invokes messagesession 170 and includes the selected phrase in message session 170. Forexample, if the user selects the phrase “Where is the meeting?”, messagegenerator 140 includes the “Where is the meeting?” phrase in messagesession 170 and addresses message session to the meeting chair. Inanother example, if the user selects a particular meeting participant tosend a message, message session 170 addresses the session to theselected meeting participant.

Message generator 140 includes a link to window 120's correspondingobject in message session 170 such that a message recipient may easilyview the object (e.g., meeting entry, online document, etc.). Messagegenerator 140 also allows the user to add additional text into messagesession 170 and, when the user is finished, message generator 140generates message 180 based upon message session 170 (see FIGS. 3B, 6,and corresponding text for further details regarding object link andadditional user text inclusion).

Message generator 140 sends message 180 to recipient client 190 overcomputer network 185, such as the Internet. Recipient client 190corresponds to the recipient address of message session 170. Using theexample described above, if message session 170 was addressed to themeeting chair, recipient client 190 is the meeting chair's clientcomputer system. Client 110 and recipient client 190 may pass messagesto each other until the user or recipient client 190's user closemessage session 170.

FIG. 2A is a calendar user interface window showing a user performing auser action in a region that corresponds to a meeting location. Window200 corresponds to a calendar entry meeting object, and is a page ofdata that includes regions 210-250. Region 210 corresponds to themeeting subject. Region 220 corresponds to the meeting chair. Region 230corresponds to the meeting time. And, region 240 corresponds to themeeting participants.

A user may invoke a context-specific message session by positioningpointer 255 over a particular region and performing a user event, suchas a right mouse click. The example shown in FIG. 2A shows that a userpositioned pointer 255 over region 240 and performed a user action inorder to find out more information regarding the meeting location. Whena message generator detects the user action, the message generatoridentifies the region where the user action took place, and retrievescontext-specific phrases corresponding to the identified region.

In turn, the message generator displays the context-specific phrases inphrase window 260. The example shown in FIG. 2A shows that phrase window260 includes phrases 262 and 264, which both correspond to region 240. Auser selects one of the phrases and, as a result, the message generatorincludes the selected phrase in a message session window (see FIG. 3Band corresponding text for further details regarding message sessionwindow properties).

FIG. 2B is a calendar user interface window showing a user selecting aregion that corresponds to meeting participants in order to initiate acontext-specific message session with one or more of the meetingparticipants. FIG. 2B is similar to FIG. 2A with the exception that theuser positioned pointer 255 over region 250 and performed a user action.

As can be seen, the message generator retrieved and displayedcontext-specific phrases that correspond to region 250 in phrase window280. Since region 250 corresponds to meeting participants, the user maysend a message to participant B, participant C, or the group byselecting phrase 282, 284 or 286, respectively.

FIG. 3A is user interface window that allows a user to view a documentand send a context-specific message to the document owner based upon aparticular area of the document. A user views a document in window 300,and as the user reads the document, the user may reach a sentence thathe does not understand or would like more information regarding thesentence's subject. As such, the user wishes to invoke acontext-specific message session with the document owner.

The user invokes the context-specific message by positioning pointer 310over the sentence in question, and performs a user action (e.g., rightmouse click). In turn, a message generator retrieves context-specificphrases corresponding to the document, and displays the phrases inphrase window 320. As can be seen in FIG. 3A, a user may select phrase330 to ask the document owner “What does this sentence mean?” or theuser may select phrase 335 to ask the document owner “Can you pleaseprovide more information regarding this sentence?”

When the user selects either phrase 330 or 335, the message generatoropens a message session window that is addressed to the document ownerand includes a link to the document and sentence. The user is able toadd other text into the message session, and the message generator sendsthe context-specific message to the document owner (see FIG. 3B andcorresponding text for further details regarding message sessions).

FIG. 3B is message session window that includes a context-specificphrase and an object link. When a user invokes a context specificmessage session by performing a user action on a particular region, amessage generator displays a phrase window for the user to select acontext-specific phrase, such as those shown in FIGS. 2A, 2B, and 3A.When the user selects one of the context-specific phrases in the phrasewindow, the message generator invokes a message session and displays amessage session window, such as window 340.

The message generator addresses the message session to a particularrecipient and includes a recipient identifier in box 345, which may bethe object owner or it may be a meeting participant. The example in FIG.3B shows that the message session is addressed to “User A,” whichcorresponds to the meeting chair of the meeting entry shown in FIGS. 2Aand 2B.

The message generator includes the context-specific phrase in window 340that was selected by the user, which is shown in box 350. The exampleshown in FIG. 3B shows that the user is sending a message to the meetingchair asking him “Where's the meeting?” The message generator alsoincludes a link to the corresponding object, as can be see in box 360,which allows a message recipient to open the object that corresponds tothe message session.

The message generator also allows a user to type in additional text inarea 370 if the user wishes to add additional comments or questionsbesides the context-specific phrase. When the user wishes to send themessage to the recipient, the user selects command button 375. If theuse wishes to send the message to other recipients and include them inthe message session, the user selects command button 380 and the messagegenerator opens a directory window for the user to select otherrecipients. When the user wishes to close the message session, the userselects command button 390, which closes window 340 and the messagesession ends.

FIG. 4 is a high-level flowchart showing steps taken in sending amessage that includes one or more context-specific phrases to one ormore recipients. Processing commences at 400, whereupon processingreceives an object request from the user (step 410). For example, theuser may be viewing his calendar and select a calendar entry object thatis a meeting. The user is the same as that shown in FIG. 1.

At step 420, processing retrieves the object from data store 150 anddisplays a corresponding user interface window for the user to view(e.g., details of a meeting). The user interface window includes a pageof data that is segmented into regions, which are context-specific.Using the example describe above, the user interface window may includeregions that correspond to the location of a meeting, the time of themeeting, and meeting participants. Data store 150 is the same as thatshown in FIG. 1.

The user views the user interface window, and performs a user actionwithin one of the regions on the page of data, which processing receivesat step 430. At step 440, processing identifies the region that the useraction was performed. Processing then retrieves context-specific phrasescorresponding to the identified region from data store 150, and storesthe context-specific phrases in temporary store 465 (pre-defined processblock 450, see FIG. 5 and corresponding text for further details).Temporary store 465 may be stored on a nonvolatile storage area, such asa computer hard drive.

Context-specific phrases are particular to the object type as well asthe identified region. For example, if the identified region correspondsto a meeting location, a context-specific phrase may be “Where is themeeting?” Another example is when the identified region corresponds to ameeting time, in which case a context-specific phrase may also betime-sensitive, such as “I'm running a few minutes late to the meeting.”Yet another example is when the identified region corresponds to meetingparticipants, in which case the context-specific phrase may includerecipient identifiers and, in turn, a user may choose which meetingparticipant to send a message.

Processing displays the context-specific phrases for the user to view atstep 460. The user views the context-specific phrases, and selects oneof the phrases, which processing receives the selection at step 470. Atstep 480, processing invokes a message session and sends acontext-specific message to recipient clients 485 (pre-defined processblock 480, see FIG. 6 and corresponding text for further details).Processing ends at 490.

FIG. 5 is a flowchart showing steps taken in collecting context-specificphrases that correspond to a region where a user action was performed. Auser performed a user action (e.g., mouse click) within a region of apage of data that is included in a user interface window. Processingidentified the region (see FIG. 4), and, in FIG. 5, proceeds through aseries of steps in order to collect context-specific phrases thatcorrespond to the identified region.

Processing commences at 500, whereupon processing retrievescontext-specific phrases from data store 150 that correspond to theidentified region (step 510). Data store 150 is the same as that shownin FIG. 1. Based upon the properties of the identified region,context-specific phrases may include phrases such as “Where is themeeting”, “Chat with Participant X”, or “What does this sentence mean?”

Context-specific phrases may also be time-sensitive. For example, if theidentified region corresponds to a meeting time and the user eventoccurred after the meeting commenced, a context-specific phrase may be“I'm running a few minutes late to the meeting.” Using the same example,if the user event occurred before the meeting commenced, acontext-sensitive phrase may be “I may be a few minutes late to themeeting.” A determination is made as to whether the identified regioncorresponds to time-sensitive phrases (decision 520). If the identifiedregion corresponds to time-sensitive phrases, decision 520 branches to“Yes” branch 522 whereupon processing retrieves a current time fromclock 528 at step 525. Clock 528 is a device that tracks the time ofday, such as a system clock.

At step 530, processing retrieves time-sensitive metadata from theobject that corresponds to the identified region. For example, for ameeting object, processing may retrieve the time that the meeting isscheduled to start.

Processing identifies valid time-sensitive phrases by comparing thecurrent time with the retrieved time metadata, and stores the validtime-sensitive phrases in temp store 465 (step 535). Using the exampledescribed above, if the meeting started before the user event, thephrase “I'm running a few minutes late to the meeting” may be stored intemporary store 465. Temporary store 465 may be stored on a nonvolatilestorage area, such as a computer hard drive. On the other hand, if theidentified region does not correspond to time-sensitive phrases,decision 520 branches to “No” branch 528 bypassing time-sensitivephrase-storing steps.

A determination is made as to whether the identified region correspondsto recipient identifiers. For example, a user may perform a user actionin a region that corresponds to meeting participants in order to send amessage to one of the participants. If the identified region includesrecipient identifiers, decision 540 branches to “Yes” branch 542whereupon processing retrieves the recipient identifiers from the objectthat corresponds to the identified region at step 550. Processinggenerates context-specific phrases that include the recipientidentifiers and stores the phrases in temporary store 465 at step 560.For example, if a recipient identifier is “Participant A,” processinggenerates a context-specific phrase such as “Chat with Participant A?”

Processing includes other context-specific phrases that correspond tothe identified region in temporary store 465 at step 570. These phrasesmay include phrases such as “Where is the meeting?”, “When is themeeting?”, and “What does this sentence mean?” Processing returns at580.

FIG. 6 is a flowchart showing steps taken in generating acontext-specific message. The context-specific message includes acontext-specific phrase, an object link, and may include other usertext. Processing commences at 600, whereupon processing invokes messagesession 170 at step 610. Message session 170 is the same as that shownin FIG. 1.

A determination is made as to whether the user selected acontext-specific phrase that included a recipient identifier, such as“Chat with Participant A” (decision 620). If the user did select acontext-specific phrase that includes a recipient identifier, decision620 branches to “Yes” branch 628 whereupon processing retrievesrecipient information from temporary store 165 and addresses messagesession 170 to the corresponding recipients (step 630). On the otherhand, if the selected context-specific phrase did not include arecipient identifier, decision 620 branches to “No” branch 622 whereuponprocessing addresses message session 170 to the owner of thecorresponding object at step 625. Temporary store 465 is the same asthat shown in FIG. 4.

Processing retrieves context-specific phrases that were selected by theuser from temp store 465, and includes the phrases in message session170 (step 640). At step 650, processing includes an object linkcorresponding to the object in message session 170 that allows a messagerecipient to easily view the object that corresponds to the message. Forexample, if the message corresponds to a meeting, the object link is alink to the meeting entry. In another example, if the message is inregards to a sentence in a document, the object link is a link to thesentence in question within the document.

A determination is made as to whether the user wishes to includeadditional text in message session 170, such as “Can I inviteParticipant D to the meeting?” (decision 660). If the user wishes toinclude additional user text, decision 660 branches to “Yes” branch 662whereupon processing receives text from the user and includes the textin message session 170 (step 670). On the other hand, if the user doesnot wish to add additional text, decision 660 branches to “No” branch668, bypassing text inclusion steps. The user is the same as that shownin FIG. 1.

At step 680, processing sends a context-specific message to recipients485 based upon message session 170. The user and recipients 485 maycontinue to send messages to each other until message session 170closes. Recipients 485 are the same as that shown in FIG. 4. Processingreturns at 690.

FIG. 7 illustrates information handling system 701 which is a simplifiedexample of a computer system capable of performing the computingoperations described herein. Computer system 701 includes processor 700which is coupled to host bus 702. A level two (L2) cache memory 704 isalso coupled to host bus 702. Host-to-PCI bridge 706 is coupled to mainmemory 708, includes cache memory and main memory control functions, andprovides bus control to handle transfers among PCI bus 710, processor700, L2 cache 704, main memory 708, and host bus 702. Main memory 708 iscoupled to Host-to-PCI bridge 706 as well as host bus 702. Devices usedsolely by host processor(s) 700, such as LAN card 730, are coupled toPCI bus 710. Service Processor Interface and ISA Access Pass-through 712provides an interface between PCI bus 710 and PCI bus 714. In thismanner, PCI bus 714 is insulated from PCI bus 710. Devices, such asflash memory 718, are coupled to PCI bus 714. In one implementation,flash memory 718 includes BIOS code that incorporates the necessaryprocessor executable code for a variety of low-level system functionsand system boot functions.

PCI bus 714 provides an interface for a variety of devices that areshared by host processor(s) 700 and Service Processor 716 including, forexample, flash memory 718. PCI-to-ISA bridge 735 provides bus control tohandle transfers between PCI bus 714 and ISA bus 740, universal serialbus (USB) functionality 745, power management functionality 755, and caninclude other functional elements not shown, such as a real-time clock(RTC), DMA control, interrupt support, and system management bussupport. Nonvolatile RAM 720 is attached to ISA Bus 740. ServiceProcessor 716 includes JTAG and I2C busses 722 for communication withprocessor(s) 700 during initialization steps. JTAG/I2C busses 722 arealso coupled to L2 cache 704, Host-to-PCI bridge 706, and main memory708 providing a communications path between the processor, the ServiceProcessor, the L2 cache, the Host-to-PCI bridge, and the main memory.Service Processor 716 also has access to system power resources forpowering down information handling device 701.

Peripheral devices and input/output (I/O) devices can be attached tovarious interfaces (e.g., parallel interface 762, serial interface 764,keyboard interface 768, and mouse interface 770 coupled to ISA bus 740.Alternatively, many I/O devices can be accommodated by a super I/Ocontroller (not shown) attached to ISA bus 740.

In order to attach computer system 701 to another computer system tocopy files over a network, LAN card 730 is coupled to PCI bus 710.Similarly, to connect computer system 701 to an ISP to connect to theInternet using a telephone line connection, modem 775 is connected toserial port 764 and PCI-to-ISA Bridge 735.

While the computer system described in FIG. 7 is capable of executingthe processes described herein, this computer system is simply oneexample of a computer system. Those skilled in the art will appreciatethat many other computer system designs are capable of performing theprocesses described herein.

One of the preferred implementations of the invention is a clientapplication, namely, a set of instructions (program code) in a codemodule that may, for example, be resident in the random access memory ofthe computer. Until required by the computer, the set of instructionsmay be stored in another computer memory, for example, in a hard diskdrive, or in a removable memory such as an optical disk (for eventualuse in a CD ROM) or floppy disk (for eventual use in a floppy diskdrive), or downloaded via the Internet or other computer network. Thus,the present invention may be implemented as a computer program productfor use in a computer. In addition, although the various methodsdescribed are conveniently implemented in a general purpose computerselectively activated or reconfigured by software, one of ordinary skillin the art would also recognize that such methods may be carried out inhardware, in firmware, or in more specialized apparatus constructed toperform the required method steps.

While particular embodiments of the present invention have been shownand described, it will be obvious to those skilled in the art that,based upon the teachings herein, that changes and modifications may bemade without departing from this invention and its broader aspects.Therefore, the appended claims are to encompass within their scope allsuch changes and modifications as are within the true spirit and scopeof this invention. Furthermore, it is to be understood that theinvention is solely defined by the appended claims. It will beunderstood by those with skill in the art that if a specific number ofan introduced claim element is intended, such intent will be explicitlyrecited in the claim, and in the absence of such recitation no suchlimitation is present. For non-limiting example, as an aid tounderstanding, the following appended claims contain usage of theintroductory phrases “at least one” and “one or more” to introduce claimelements. However, the use of such phrases should not be construed toimply that the introduction of a claim element by the indefinitearticles “aa” or “an” limits any particular claim containing suchintroduced claim element to inventions containing only one such element,even when the same claim includes the introductory phrases “one or more”or “at least one” and indefinite articles such as “a” or “an”; the sameholds true for the use in the claims of definite articles.

1. A computer-implemented method comprising: receiving a user actioncorresponding to a page of data, the page of data displayed on a videodisplay device and including a plurality of regions; identifying theregion from the plurality of regions where the user action wasperformed; retrieving, from computer readable storage, one or morecontext-specific phrases that correspond to the identified region;receiving a phrase selection from a user that corresponds to one of thecontext-specific phrases; including the context-specific phrasecorresponding to the phrase selection in a context-specific message; andsending the context-specific message to a recipient over a computernetwork.
 2. The method of claim 1 further comprising: displaying, on thevideo display device, the one or more context-specific phrases.
 3. Themethod of claim 1 further comprising: including a page link in thecontext-specific message, the page link corresponding to the page ofdata.
 4. The method of claim 1 further comprising: determining that theidentified region is time sensitive; retrieving a current time; andselecting the one or more context-specific phrases based upon theretrieved current time.
 5. The method of claim 1 further comprising:receiving user text; and including the user text in the context-specificmessage session.
 6. The method of claim 1 wherein the identified regioncorresponds to one or more recipient identifiers, the method furthercomprising: displaying, on the video display device, the one or morerecipient identifiers; and wherein the phrase selection corresponds toone of the recipient identifiers.
 7. The method of claim 1 wherein eachof the plurality of regions corresponds to a different location within auser interface window.
 8. A program product comprising Non-transitory:computer storage medium having computer readable code, the computerreadable code being effective to: receive a user action corresponding toa page of data, the page of data displayed on a video display device andincluding a plurality of regions; identify the region from the pluralityof regions where the user action was performed; retrieve, from computerreadable storage, one or more context-specific phrases that correspondto the identified region; receive a phrase selection from a user thatcorresponds to one of the context-specific phrases; include thecontext-specific phrase corresponding to the phrase selection in acontext-specific message; and send the context-specific message to arecipient over a computer network.
 9. The program product of claim 8wherein the computer readable code is further effective to: display, onthe video display device, the one or more context-specific phrases. 10.The program product of claim 8 wherein the computer readable code isfurther effective to: include a page link in the context-specificmessage, the page link corresponding to the page of data.
 11. Theprogram product of claim 8 wherein the computer readable code is furthereffective to: determine that the identified region is time sensitive;retrieve a current time; and select the one or more context-specificphrases based upon the retrieved current time.
 12. The program productof claim 8 wherein the computer readable code is further effective to:receive user text; and include the user text in the context-specificmessage session.
 13. The program product of claim 8 wherein theidentified region corresponds to one or more recipient identifiers, thecomputer readable code further effective to: display, on the videodisplay device, the one or more recipient identifiers; and wherein thephrase selection corresponds to one of the recipient identifiers. 14.The program product of claim 8 wherein each of the plurality of regionscorresponds to a different location within a user interface window. 15.An information handling system comprising: one or more processors; avideo display device; a memory accessible by the processors; one or morenonvolatile storage devices accessible by the processors; and a messagegeneration tool for generating context-sensitive message sessions, themessage generation tool being effective to: receive a user actioncorresponding to a page of data, the page of data displayed on the videodisplay device and including a plurality of regions; identify the regionfrom the plurality of regions where the user action was performed;retrieve one or more context-specific phrases that correspond to theidentified region from one of the non-volatile storage devices; receivea phrase selection from a user that corresponds to one of thecontext-specific phrases; include the context-specific phrasecorresponding to the phrase selection in a context-specific message; andsend the context-specific message to a recipient over a computernetwork.
 16. The information handling system of claim 15 wherein themessage generation tool is further effective to: display, on the videodisplay device, the one or more context-specific phrases.
 17. Theinformation handling system of claim 15 wherein the message generationtool is further effective to: include a page link in thecontext-specific message, the page link corresponding to the page ofdata.
 18. The information handling system of claim 15 wherein themessage generation tool is further effective to: determine that theidentified region is time sensitive; retrieve a current time from acomputer system clock; and select the one or more context-specificphrases based upon the retrieved current time.
 19. The informationhandling system of claim 15 wherein the message generation tool isfurther effective to: receive user text; and include the user text inthe context-specific message session.
 20. The information handlingsystem of claim 15 wherein the identified region corresponds to one ormore recipient identifiers, the message generation tool furthereffective to: display, on the video display device, the one or morerecipient identifiers; and wherein the phrase selection corresponds toone of the recipient identifiers.
 21. A computer-implemented methodcomprising: displaying, on a video display device, a page of data thatincludes a plurality of regions; receiving a user action correspondingto the page of data; identifying the region from the plurality ofregions where the user action was performed; retrieving, from computerreadable storage, one or more context-specific phrases that correspondto the identified region; displaying, on the video display device, thecontext-specific phrases; receiving a phrase selection that correspondsto one of the context-specific phrases; initiating a context-specificmessage session based upon the phrase selection; including thecontext-specific phrase that corresponds to the phrase selection in acontext-specific message; and sending the context-specific message to arecipient over a computer network.